package cn.itcast.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class packageOrderExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public packageOrderExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOldIdsIsNull() {
            addCriterion("old_ids is null");
            return (Criteria) this;
        }

        public Criteria andOldIdsIsNotNull() {
            addCriterion("old_ids is not null");
            return (Criteria) this;
        }

        public Criteria andOldIdsEqualTo(String value) {
            addCriterion("old_ids =", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsNotEqualTo(String value) {
            addCriterion("old_ids <>", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsGreaterThan(String value) {
            addCriterion("old_ids >", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsGreaterThanOrEqualTo(String value) {
            addCriterion("old_ids >=", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsLessThan(String value) {
            addCriterion("old_ids <", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsLessThanOrEqualTo(String value) {
            addCriterion("old_ids <=", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsLike(String value) {
            addCriterion("old_ids like", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsNotLike(String value) {
            addCriterion("old_ids not like", value, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsIn(List<String> values) {
            addCriterion("old_ids in", values, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsNotIn(List<String> values) {
            addCriterion("old_ids not in", values, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsBetween(String value1, String value2) {
            addCriterion("old_ids between", value1, value2, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOldIdsNotBetween(String value1, String value2) {
            addCriterion("old_ids not between", value1, value2, "oldIds");
            return (Criteria) this;
        }

        public Criteria andOpenIdIsNull() {
            addCriterion("open_id is null");
            return (Criteria) this;
        }

        public Criteria andOpenIdIsNotNull() {
            addCriterion("open_id is not null");
            return (Criteria) this;
        }

        public Criteria andOpenIdEqualTo(String value) {
            addCriterion("open_id =", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdNotEqualTo(String value) {
            addCriterion("open_id <>", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdGreaterThan(String value) {
            addCriterion("open_id >", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdGreaterThanOrEqualTo(String value) {
            addCriterion("open_id >=", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdLessThan(String value) {
            addCriterion("open_id <", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdLessThanOrEqualTo(String value) {
            addCriterion("open_id <=", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdLike(String value) {
            addCriterion("open_id like", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdNotLike(String value) {
            addCriterion("open_id not like", value, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdIn(List<String> values) {
            addCriterion("open_id in", values, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdNotIn(List<String> values) {
            addCriterion("open_id not in", values, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdBetween(String value1, String value2) {
            addCriterion("open_id between", value1, value2, "openId");
            return (Criteria) this;
        }

        public Criteria andOpenIdNotBetween(String value1, String value2) {
            addCriterion("open_id not between", value1, value2, "openId");
            return (Criteria) this;
        }

        public Criteria andOrderNumberIsNull() {
            addCriterion("order_number is null");
            return (Criteria) this;
        }

        public Criteria andOrderNumberIsNotNull() {
            addCriterion("order_number is not null");
            return (Criteria) this;
        }

        public Criteria andOrderNumberEqualTo(String value) {
            addCriterion("order_number =", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotEqualTo(String value) {
            addCriterion("order_number <>", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberGreaterThan(String value) {
            addCriterion("order_number >", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberGreaterThanOrEqualTo(String value) {
            addCriterion("order_number >=", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberLessThan(String value) {
            addCriterion("order_number <", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberLessThanOrEqualTo(String value) {
            addCriterion("order_number <=", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberLike(String value) {
            addCriterion("order_number like", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotLike(String value) {
            addCriterion("order_number not like", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberIn(List<String> values) {
            addCriterion("order_number in", values, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotIn(List<String> values) {
            addCriterion("order_number not in", values, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberBetween(String value1, String value2) {
            addCriterion("order_number between", value1, value2, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotBetween(String value1, String value2) {
            addCriterion("order_number not between", value1, value2, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderTimeIsNull() {
            addCriterion("order_time is null");
            return (Criteria) this;
        }

        public Criteria andOrderTimeIsNotNull() {
            addCriterion("order_time is not null");
            return (Criteria) this;
        }

        public Criteria andOrderTimeEqualTo(Date value) {
            addCriterion("order_time =", value, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeNotEqualTo(Date value) {
            addCriterion("order_time <>", value, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeGreaterThan(Date value) {
            addCriterion("order_time >", value, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("order_time >=", value, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeLessThan(Date value) {
            addCriterion("order_time <", value, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeLessThanOrEqualTo(Date value) {
            addCriterion("order_time <=", value, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeIn(List<Date> values) {
            addCriterion("order_time in", values, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeNotIn(List<Date> values) {
            addCriterion("order_time not in", values, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeBetween(Date value1, Date value2) {
            addCriterion("order_time between", value1, value2, "orderTime");
            return (Criteria) this;
        }

        public Criteria andOrderTimeNotBetween(Date value1, Date value2) {
            addCriterion("order_time not between", value1, value2, "orderTime");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameIsNull() {
            addCriterion("horseman_name is null");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameIsNotNull() {
            addCriterion("horseman_name is not null");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameEqualTo(String value) {
            addCriterion("horseman_name =", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameNotEqualTo(String value) {
            addCriterion("horseman_name <>", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameGreaterThan(String value) {
            addCriterion("horseman_name >", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameGreaterThanOrEqualTo(String value) {
            addCriterion("horseman_name >=", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameLessThan(String value) {
            addCriterion("horseman_name <", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameLessThanOrEqualTo(String value) {
            addCriterion("horseman_name <=", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameLike(String value) {
            addCriterion("horseman_name like", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameNotLike(String value) {
            addCriterion("horseman_name not like", value, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameIn(List<String> values) {
            addCriterion("horseman_name in", values, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameNotIn(List<String> values) {
            addCriterion("horseman_name not in", values, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameBetween(String value1, String value2) {
            addCriterion("horseman_name between", value1, value2, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andHorsemanNameNotBetween(String value1, String value2) {
            addCriterion("horseman_name not between", value1, value2, "horsemanName");
            return (Criteria) this;
        }

        public Criteria andProductTypeIsNull() {
            addCriterion("product_type is null");
            return (Criteria) this;
        }

        public Criteria andProductTypeIsNotNull() {
            addCriterion("product_type is not null");
            return (Criteria) this;
        }

        public Criteria andProductTypeEqualTo(String value) {
            addCriterion("product_type =", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotEqualTo(String value) {
            addCriterion("product_type <>", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeGreaterThan(String value) {
            addCriterion("product_type >", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeGreaterThanOrEqualTo(String value) {
            addCriterion("product_type >=", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeLessThan(String value) {
            addCriterion("product_type <", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeLessThanOrEqualTo(String value) {
            addCriterion("product_type <=", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeLike(String value) {
            addCriterion("product_type like", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotLike(String value) {
            addCriterion("product_type not like", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeIn(List<String> values) {
            addCriterion("product_type in", values, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotIn(List<String> values) {
            addCriterion("product_type not in", values, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeBetween(String value1, String value2) {
            addCriterion("product_type between", value1, value2, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotBetween(String value1, String value2) {
            addCriterion("product_type not between", value1, value2, "productType");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanIsNull() {
            addCriterion("order_sum_horseman is null");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanIsNotNull() {
            addCriterion("order_sum_horseman is not null");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanEqualTo(Double value) {
            addCriterion("order_sum_horseman =", value, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanNotEqualTo(Double value) {
            addCriterion("order_sum_horseman <>", value, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanGreaterThan(Double value) {
            addCriterion("order_sum_horseman >", value, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanGreaterThanOrEqualTo(Double value) {
            addCriterion("order_sum_horseman >=", value, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanLessThan(Double value) {
            addCriterion("order_sum_horseman <", value, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanLessThanOrEqualTo(Double value) {
            addCriterion("order_sum_horseman <=", value, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanIn(List<Double> values) {
            addCriterion("order_sum_horseman in", values, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanNotIn(List<Double> values) {
            addCriterion("order_sum_horseman not in", values, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanBetween(Double value1, Double value2) {
            addCriterion("order_sum_horseman between", value1, value2, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumHorsemanNotBetween(Double value1, Double value2) {
            addCriterion("order_sum_horseman not between", value1, value2, "orderSumHorseman");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleIsNull() {
            addCriterion("order_sum_recycle is null");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleIsNotNull() {
            addCriterion("order_sum_recycle is not null");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleEqualTo(Double value) {
            addCriterion("order_sum_recycle =", value, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleNotEqualTo(Double value) {
            addCriterion("order_sum_recycle <>", value, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleGreaterThan(Double value) {
            addCriterion("order_sum_recycle >", value, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleGreaterThanOrEqualTo(Double value) {
            addCriterion("order_sum_recycle >=", value, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleLessThan(Double value) {
            addCriterion("order_sum_recycle <", value, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleLessThanOrEqualTo(Double value) {
            addCriterion("order_sum_recycle <=", value, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleIn(List<Double> values) {
            addCriterion("order_sum_recycle in", values, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleNotIn(List<Double> values) {
            addCriterion("order_sum_recycle not in", values, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleBetween(Double value1, Double value2) {
            addCriterion("order_sum_recycle between", value1, value2, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andOrderSumRecycleNotBetween(Double value1, Double value2) {
            addCriterion("order_sum_recycle not between", value1, value2, "orderSumRecycle");
            return (Criteria) this;
        }

        public Criteria andProvinceIsNull() {
            addCriterion("province is null");
            return (Criteria) this;
        }

        public Criteria andProvinceIsNotNull() {
            addCriterion("province is not null");
            return (Criteria) this;
        }

        public Criteria andProvinceEqualTo(String value) {
            addCriterion("province =", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotEqualTo(String value) {
            addCriterion("province <>", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceGreaterThan(String value) {
            addCriterion("province >", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceGreaterThanOrEqualTo(String value) {
            addCriterion("province >=", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceLessThan(String value) {
            addCriterion("province <", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceLessThanOrEqualTo(String value) {
            addCriterion("province <=", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceLike(String value) {
            addCriterion("province like", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotLike(String value) {
            addCriterion("province not like", value, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceIn(List<String> values) {
            addCriterion("province in", values, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotIn(List<String> values) {
            addCriterion("province not in", values, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceBetween(String value1, String value2) {
            addCriterion("province between", value1, value2, "province");
            return (Criteria) this;
        }

        public Criteria andProvinceNotBetween(String value1, String value2) {
            addCriterion("province not between", value1, value2, "province");
            return (Criteria) this;
        }

        public Criteria andCityIsNull() {
            addCriterion("city is null");
            return (Criteria) this;
        }

        public Criteria andCityIsNotNull() {
            addCriterion("city is not null");
            return (Criteria) this;
        }

        public Criteria andCityEqualTo(String value) {
            addCriterion("city =", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotEqualTo(String value) {
            addCriterion("city <>", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThan(String value) {
            addCriterion("city >", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThanOrEqualTo(String value) {
            addCriterion("city >=", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLessThan(String value) {
            addCriterion("city <", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLessThanOrEqualTo(String value) {
            addCriterion("city <=", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityLike(String value) {
            addCriterion("city like", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotLike(String value) {
            addCriterion("city not like", value, "city");
            return (Criteria) this;
        }

        public Criteria andCityIn(List<String> values) {
            addCriterion("city in", values, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotIn(List<String> values) {
            addCriterion("city not in", values, "city");
            return (Criteria) this;
        }

        public Criteria andCityBetween(String value1, String value2) {
            addCriterion("city between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andCityNotBetween(String value1, String value2) {
            addCriterion("city not between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andRegionIsNull() {
            addCriterion("region is null");
            return (Criteria) this;
        }

        public Criteria andRegionIsNotNull() {
            addCriterion("region is not null");
            return (Criteria) this;
        }

        public Criteria andRegionEqualTo(String value) {
            addCriterion("region =", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionNotEqualTo(String value) {
            addCriterion("region <>", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionGreaterThan(String value) {
            addCriterion("region >", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionGreaterThanOrEqualTo(String value) {
            addCriterion("region >=", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionLessThan(String value) {
            addCriterion("region <", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionLessThanOrEqualTo(String value) {
            addCriterion("region <=", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionLike(String value) {
            addCriterion("region like", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionNotLike(String value) {
            addCriterion("region not like", value, "region");
            return (Criteria) this;
        }

        public Criteria andRegionIn(List<String> values) {
            addCriterion("region in", values, "region");
            return (Criteria) this;
        }

        public Criteria andRegionNotIn(List<String> values) {
            addCriterion("region not in", values, "region");
            return (Criteria) this;
        }

        public Criteria andRegionBetween(String value1, String value2) {
            addCriterion("region between", value1, value2, "region");
            return (Criteria) this;
        }

        public Criteria andRegionNotBetween(String value1, String value2) {
            addCriterion("region not between", value1, value2, "region");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressIsNull() {
            addCriterion("recycle_address is null");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressIsNotNull() {
            addCriterion("recycle_address is not null");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressEqualTo(String value) {
            addCriterion("recycle_address =", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressNotEqualTo(String value) {
            addCriterion("recycle_address <>", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressGreaterThan(String value) {
            addCriterion("recycle_address >", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressGreaterThanOrEqualTo(String value) {
            addCriterion("recycle_address >=", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressLessThan(String value) {
            addCriterion("recycle_address <", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressLessThanOrEqualTo(String value) {
            addCriterion("recycle_address <=", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressLike(String value) {
            addCriterion("recycle_address like", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressNotLike(String value) {
            addCriterion("recycle_address not like", value, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressIn(List<String> values) {
            addCriterion("recycle_address in", values, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressNotIn(List<String> values) {
            addCriterion("recycle_address not in", values, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressBetween(String value1, String value2) {
            addCriterion("recycle_address between", value1, value2, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleAddressNotBetween(String value1, String value2) {
            addCriterion("recycle_address not between", value1, value2, "recycleAddress");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberIsNull() {
            addCriterion("recycle_number is null");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberIsNotNull() {
            addCriterion("recycle_number is not null");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberEqualTo(String value) {
            addCriterion("recycle_number =", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberNotEqualTo(String value) {
            addCriterion("recycle_number <>", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberGreaterThan(String value) {
            addCriterion("recycle_number >", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberGreaterThanOrEqualTo(String value) {
            addCriterion("recycle_number >=", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberLessThan(String value) {
            addCriterion("recycle_number <", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberLessThanOrEqualTo(String value) {
            addCriterion("recycle_number <=", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberLike(String value) {
            addCriterion("recycle_number like", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberNotLike(String value) {
            addCriterion("recycle_number not like", value, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberIn(List<String> values) {
            addCriterion("recycle_number in", values, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberNotIn(List<String> values) {
            addCriterion("recycle_number not in", values, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberBetween(String value1, String value2) {
            addCriterion("recycle_number between", value1, value2, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNumberNotBetween(String value1, String value2) {
            addCriterion("recycle_number not between", value1, value2, "recycleNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleNameIsNull() {
            addCriterion("recycle_name is null");
            return (Criteria) this;
        }

        public Criteria andRecycleNameIsNotNull() {
            addCriterion("recycle_name is not null");
            return (Criteria) this;
        }

        public Criteria andRecycleNameEqualTo(String value) {
            addCriterion("recycle_name =", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameNotEqualTo(String value) {
            addCriterion("recycle_name <>", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameGreaterThan(String value) {
            addCriterion("recycle_name >", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameGreaterThanOrEqualTo(String value) {
            addCriterion("recycle_name >=", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameLessThan(String value) {
            addCriterion("recycle_name <", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameLessThanOrEqualTo(String value) {
            addCriterion("recycle_name <=", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameLike(String value) {
            addCriterion("recycle_name like", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameNotLike(String value) {
            addCriterion("recycle_name not like", value, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameIn(List<String> values) {
            addCriterion("recycle_name in", values, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameNotIn(List<String> values) {
            addCriterion("recycle_name not in", values, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameBetween(String value1, String value2) {
            addCriterion("recycle_name between", value1, value2, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleNameNotBetween(String value1, String value2) {
            addCriterion("recycle_name not between", value1, value2, "recycleName");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberIsNull() {
            addCriterion("recycle_children_number is null");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberIsNotNull() {
            addCriterion("recycle_children_number is not null");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberEqualTo(String value) {
            addCriterion("recycle_children_number =", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberNotEqualTo(String value) {
            addCriterion("recycle_children_number <>", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberGreaterThan(String value) {
            addCriterion("recycle_children_number >", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberGreaterThanOrEqualTo(String value) {
            addCriterion("recycle_children_number >=", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberLessThan(String value) {
            addCriterion("recycle_children_number <", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberLessThanOrEqualTo(String value) {
            addCriterion("recycle_children_number <=", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberLike(String value) {
            addCriterion("recycle_children_number like", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberNotLike(String value) {
            addCriterion("recycle_children_number not like", value, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberIn(List<String> values) {
            addCriterion("recycle_children_number in", values, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberNotIn(List<String> values) {
            addCriterion("recycle_children_number not in", values, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberBetween(String value1, String value2) {
            addCriterion("recycle_children_number between", value1, value2, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andRecycleChildrenNumberNotBetween(String value1, String value2) {
            addCriterion("recycle_children_number not between", value1, value2, "recycleChildrenNumber");
            return (Criteria) this;
        }

        public Criteria andClearTimeIsNull() {
            addCriterion("clear_time is null");
            return (Criteria) this;
        }

        public Criteria andClearTimeIsNotNull() {
            addCriterion("clear_time is not null");
            return (Criteria) this;
        }

        public Criteria andClearTimeEqualTo(Date value) {
            addCriterion("clear_time =", value, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeNotEqualTo(Date value) {
            addCriterion("clear_time <>", value, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeGreaterThan(Date value) {
            addCriterion("clear_time >", value, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("clear_time >=", value, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeLessThan(Date value) {
            addCriterion("clear_time <", value, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeLessThanOrEqualTo(Date value) {
            addCriterion("clear_time <=", value, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeIn(List<Date> values) {
            addCriterion("clear_time in", values, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeNotIn(List<Date> values) {
            addCriterion("clear_time not in", values, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeBetween(Date value1, Date value2) {
            addCriterion("clear_time between", value1, value2, "clearTime");
            return (Criteria) this;
        }

        public Criteria andClearTimeNotBetween(Date value1, Date value2) {
            addCriterion("clear_time not between", value1, value2, "clearTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeIsNull() {
            addCriterion("pay_time is null");
            return (Criteria) this;
        }

        public Criteria andPayTimeIsNotNull() {
            addCriterion("pay_time is not null");
            return (Criteria) this;
        }

        public Criteria andPayTimeEqualTo(Date value) {
            addCriterion("pay_time =", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotEqualTo(Date value) {
            addCriterion("pay_time <>", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeGreaterThan(Date value) {
            addCriterion("pay_time >", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("pay_time >=", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeLessThan(Date value) {
            addCriterion("pay_time <", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeLessThanOrEqualTo(Date value) {
            addCriterion("pay_time <=", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeIn(List<Date> values) {
            addCriterion("pay_time in", values, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotIn(List<Date> values) {
            addCriterion("pay_time not in", values, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeBetween(Date value1, Date value2) {
            addCriterion("pay_time between", value1, value2, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotBetween(Date value1, Date value2) {
            addCriterion("pay_time not between", value1, value2, "payTime");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andOrderExplainIsNull() {
            addCriterion("order_explain is null");
            return (Criteria) this;
        }

        public Criteria andOrderExplainIsNotNull() {
            addCriterion("order_explain is not null");
            return (Criteria) this;
        }

        public Criteria andOrderExplainEqualTo(String value) {
            addCriterion("order_explain =", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainNotEqualTo(String value) {
            addCriterion("order_explain <>", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainGreaterThan(String value) {
            addCriterion("order_explain >", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainGreaterThanOrEqualTo(String value) {
            addCriterion("order_explain >=", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainLessThan(String value) {
            addCriterion("order_explain <", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainLessThanOrEqualTo(String value) {
            addCriterion("order_explain <=", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainLike(String value) {
            addCriterion("order_explain like", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainNotLike(String value) {
            addCriterion("order_explain not like", value, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainIn(List<String> values) {
            addCriterion("order_explain in", values, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainNotIn(List<String> values) {
            addCriterion("order_explain not in", values, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainBetween(String value1, String value2) {
            addCriterion("order_explain between", value1, value2, "orderExplain");
            return (Criteria) this;
        }

        public Criteria andOrderExplainNotBetween(String value1, String value2) {
            addCriterion("order_explain not between", value1, value2, "orderExplain");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}